package com.ddstation.crud.mapper;

import com.ddstation.crud.entity.DtInvsIllegalAppealEntity;
import com.ddstation.crud.entity.DtInvsIllegalCheckDailyEntity;
import com.ddstation.his_verify.entity.MaInvsIcd10SectionEntity;
import com.ddstation.his_verify.entity.MaInvsIcd10SpecialtyEntity;
import org.apache.ibatis.annotations.Param;

import java.util.List;

import java.util.List;
import java.util.Map;
import java.util.Date;

public interface DtInvsIllegalCheckDailyMapper {
    int updateByPrimaryKeySelective(DtInvsIllegalCheckDailyEntity record);

    DtInvsIllegalCheckDailyEntity selectOne(@Param("id") Integer id);

    int insertReplace(DtInvsIllegalCheckDailyEntity record);

    int insertByList(List<DtInvsIllegalCheckDailyEntity> list);

    public List<String> selectIllegalIds(
            @Param("institutionId") String institutionId
            , @Param("businessType") Integer businessType
            , @Param("businessSubType") Integer businessSubType
            , @Param("targetIds") List<String> targetIds);
    public int updateCheckDailyStatus(
            @Param("institutionId") String institutionId
            , @Param("businessType") Integer businessType
            , @Param("businessSubType") Integer businessSubType
            , @Param("targetIds") List<String> targetIds);

    public int updateIllegalAppealStatus(
            @Param("illegalIds") List<String> illegalIds);

    public int insertCheckDaily(List<DtInvsIllegalCheckDailyEntity> daily);

    public int insertIllegalAppeal(List<DtInvsIllegalAppealEntity> appeals);

    public List<MaInvsIcd10SectionEntity> selectTechnicalsByIcd10(Map<String, Object> icd10s);

    public List<MaInvsIcd10SpecialtyEntity> selectAllSpecialtys();

    List<DtInvsIllegalCheckDailyEntity> selectOneByDateAndInstitution(@Param("date") Date date, @Param("institutionId")String institutionId);

    int insert(DtInvsIllegalCheckDailyEntity record);
}